package com.gph.saviorframework.wf.service;

import com.gph.saviorframework.wf.model.ApproveInfo;

import java.util.List;

/**
 * 流程审批信息服务接口
 *
 * @author guopeihui
 */
public interface ActivitiApproveInfoService {

    /**
     * 保存审批信息
     * @param approveInfo
     * @return
     */
    void save(ApproveInfo approveInfo);

    /**
     * 根据编号获取审批信息
     * @param id
     * @return
     */
    ApproveInfo get(String id);

    /**
     * 根据审批编号获取所有的审批信息
     * @param applyId
     * @return
     */
    List<ApproveInfo> findByApplyId(String applyId);

    /**
     * 根据任务编号获取所有的审批信息
     * @param taskId
     * @return
     */
    List<ApproveInfo> findByTaskId(String taskId);

    /**
     * 根据任务key获取所有的审批信息
     * @param taskKey
     * @return
     */
    List<ApproveInfo> findByTaskKey(String taskKey);

    /**
     * 根据流程实例编号获取所有的审批信息
     * @param processInsId
     * @return
     */
    List<ApproveInfo> findByProcessInsId(String processInsId);

    /**
     * 根据流程实例编号删除审批信息
     * @param processInsId
     */
    void deleteByProcessInsId(String processInsId);
}
